import { GoodsTypeEnum } from '@/enums/goodsEnums'
import { useThemeStore } from '@/stores/theme'

export enum SubmitEventEnum {
    CONFIRM = 'confirm',
    CART = 'cart',
    BUY = 'buy',
    BUY_NOW = 'buyNow',
    // 处理函数
    CART_HANDLE = 'cartHandle',
    BUY_HANDLE = 'buyHandle',
    BUY_NOW_HANDLE = 'buyNowHandle'
}

// 定义修改规格确认按钮（改为函数，动态获取 themeStore）
export const getConfirmSpecButtons = () => {
    try {
        const themeStore = useThemeStore()
        return {
            event: SubmitEventEnum.CONFIRM,
            style: {
                'background-color': themeStore.primaryColor || 'var(--theme-color)'
            },
            text: '确认'
        }
    } catch (error) {
        console.log('getConfirmSpecButtons error', error)
        // 降级方案
        return {
    event: SubmitEventEnum.CONFIRM,
    style: {
                'background-color': 'var(--theme-color)'
    },
    text: '确认'
}
    }
}

// 定义按钮组（改为函数，动态获取 themeStore）
export const getChangeSpecButtons = () => {
    try {
        const themeStore = useThemeStore()
        return {
    [GoodsTypeEnum.ORDINARY]: {
        [SubmitEventEnum.CART]: {
            event: SubmitEventEnum.CART,
            style: {
                'background-color': 'var(--theme-light-color)',
                color: 'var(--theme-color)'
            },
            text: '加入购物车'
        },
        [SubmitEventEnum.BUY]: {
            event: SubmitEventEnum.BUY,
            style: {
                        'background-color': themeStore.primaryColor || 'var(--theme-color)'
            },
            text: '立即购买'
        }
    },
    [GoodsTypeEnum.SECKILL]: {
        [SubmitEventEnum.BUY]: {
            event: SubmitEventEnum.BUY,
            style: {
                'background-color': 'var(--theme-light-color)',
                color: 'var(--theme-color)'
            },
            text: '原价购买'
        },
        [SubmitEventEnum.BUY_NOW]: {
            event: SubmitEventEnum.BUY_NOW,
            style: {
                        'background-color': themeStore.primaryColor || 'var(--theme-color)'
                    },
                    text: '立即抢购'
                }
            }
        }
    } catch (error) {
        console.log('getChangeSpecButtons error', error)
        // 降级方案
        return {
            [GoodsTypeEnum.ORDINARY]: {
                [SubmitEventEnum.CART]: {
                    event: SubmitEventEnum.CART,
                    style: {
                        'background-color': 'var(--theme-light-color)',
                        color: 'var(--theme-color)'
                    },
                    text: '加入购物车'
                },
                [SubmitEventEnum.BUY]: {
                    event: SubmitEventEnum.BUY,
                    style: {
                        'background-color': 'var(--theme-color)'
                    },
                    text: '立即购买'
                }
            },
            [GoodsTypeEnum.SECKILL]: {
                [SubmitEventEnum.BUY]: {
                    event: SubmitEventEnum.BUY,
                    style: {
                        'background-color': 'var(--theme-light-color)',
                        color: 'var(--theme-color)'
                    },
                    text: '原价购买'
                },
                [SubmitEventEnum.BUY_NOW]: {
                    event: SubmitEventEnum.BUY_NOW,
                    style: {
                        'background-color': 'var(--theme-color)'
            },
            text: '立即抢购'
                }
            }
        }
    }
}

// 注意：不再导出 confirmSpecButtons 和 changeSpecButtons 对象
// 请在组件中调用 getConfirmSpecButtons() 和 getChangeSpecButtons() 来获取配置
